<?php
	function p($arg){
		echo "<pre>";
		print_r($arg);
		echo "<pre>";
	}
	//系统运行时间
	define("RUN_TIME",microtime(true));
	//3.1.php
	//文件加载
	function load($file=null){
		static $files =array();
		//如果没有传递任何参数，返回数组
		//if(null==null);//null与null可以比较，建议使用is_null()函数
		if(is_null($file)){
			return $files;
		}
		//序列化文件名
		$name = md5($file);
		//判断文件是否已经加载过
		if(isset($files[$name])){
			return true;
		}
		//$s = microtime(true);
		//加载文件 
		include $file;
		// echo microtime(true)."<br/>".RUN_TIME;exit;
		//得到文件加载成功的时间 比如说当前时间 08:01:01秒，文件加载用了0.22秒,$runtime值 为08:01:01.22秒   0.22
		$runtime =round(microtime(true)-RUN_TIME,3);
		//在静态数组中保存文件的信息
		$files[$name]=array(
			"time"=>$runtime,//加载时间
			"file"=>$file//文件名
		);


		
	}

	//获得文件大小  GB MB  KB
	//@param $file string 文件
	//1222222323 b>kb >mb >GB>TB
	//1024*1024(kb)*1024(db)
	function get_size($file,$dec=3){
		$size = filesize($file);
		switch(true){
			//是否大于GB
			case $size>pow(1024,3):
			 return round($size/pow(1024,3),$dec)."GB";
			//是否大于MB
			case $size>pow(1024,2):
			 return round($size/pow(1024,2),$dec)."MB";
			 //是否大于KB
			case $size>1024:
			 return  round($size/1024,$dec);
			default:
			 return $size."B";
		}
	}
	//不区分大小写的数据键检测
	function array_key_exists_d($key,$arr){
		$_key = strtolower($key);
		foreach($arr as $k=>$v){
			if($_key==strtolower($k)){
				return true;
			}
		}
		return false;
	}
	//递归更改数组的KEY（键名）
	//@param array 
	//@stat int  0 小写  1 大写
	function array_change_key_case_d($arr,$stat=0){
		$_newArr = array();//新数组
		$func = $stat?"strtoupper":"strtolower";
		if(!is_array($arr) || empty($arr)){
			return $_newArr;
		}
		foreach($arr as $k=>$v){
			$_k = $func($k);//通过变量函数转换KEY大小写
			$_newArr[$_k] = is_array($v)?array_change_key_case_d($v,$stat):$v;
		}
		return $_newArr;
	}
	
	
	 function array_change_val_case_d($arr,$stat=0){
     $_newArr=array();
     $func=$stat?"strtoupper":"strtolower";
     if(!is_array($arr)||empty($arr)){
       return $_newArr;
       }
     foreach($arr as $k=>$v){
	   $_k=$k;
	   $_newArr[$_k] =$k;      
       $_newArr[$_k]=is_array($v)?array_change_val_case_d($v,$stat):$func($v);
       }
     return $_newArr;
     }
?>



<!--
var file = {};
file.one={
	"time":233423,
	file:"3.1.php"
}

<input type="text" name="uname" value="aaa"/>
-->
